The advent of virtualization technologies for computing resources has provided benefits with respect to managing large-scale computing resources for many customers with diverse needs and has allowed various computing resources or computing services to be efficiently and securely shared by multiple customers. For example, virtualization technologies may allow a single physical computing machine to be shared among multiple customers by providing each customer with one or more computing instances hosted by the single physical computing machine using a hypervisor. Each computing instance may be a guest machine acting as a distinct logical computing system that provides a customer with the perception that the customer is the sole operator and administrator of a given hardware computing resource which has been virtualized.
Computing instances may be assigned block level storage volumes that may be utilized by the computing instances in performing various operations. Data on the storage volumes may be backed up by creating point-in-time storage snapshots. The storage snapshots may be incremental backups of block level storage, such that blocks that have changed since a last snapshot was created may be saved, thereby minimizing an amount of time needed to create a storage snapshot. When deleting a storage snapshot, only the data unique to that storage snapshot may be removed. In the event that data contained on a storage volume may need to be restored, active storage snapshots associated with the storage volume may contain information needed to restore the data to a new storage volume.